GenerateSuspense

Description

GenerateSuspense business rule is used to create a suspense record when the transaction in which the rule is attached is processed. The rule populates a value to the fixed fields in the AsSuspense table (SuspenseScreen) as well as to the dynamic fields in the AsSuspenseFields table.  Examples of these fixed fields are: Policy Number, Effective Date, Amount, Type Code and Status. Some of those fields can be populated based on the configuration defined in this business rule. Suspense records and accounting to those suspense records can be conditionally created.

 

Note:  If the <Suspense> tag is present in this transaction configuration, then the GenerateSuspense attached business rule will not execute.  The <Suspense> tag in the transaction takes precedence.

 

 GenerateSuspense Element/Attribute Table

Element/Tag

Definition

Attribute

Element/Attribute Value and Description

<GenerateSuspense>

The required opening and closing elements of this business rule.

RULE

Optional attribute;
=SuspenseScreen / SuspenseBatchScreen

This will be used to decide whether the SuspenseScreen or SuspenseBatchScreen business rule will be used in conjunction with the fields of GenerateSuspense. Depending on which screen rule is used with GenerateSuspense, dynamic fields of that rule's XML data ( which get values from the rule's fields)along with the GenerateSuspense fields (which will get their datatypes by looking through the rule's fields) will be saved to AsSuspenseField.

  <Suspense>

Optional element;
The opening and closing tag of the suspense section of the business rule.
 
Note:
 This element is logically required. If this is omitted, then this business rule has no effect.

 

 

         <Column>

Optional / Repeatable element;
Processing the transaction attached to this business rule generates the suspense record. This element is used to specify the values with which the records should be created.

NAME

Required attribute;
="Field Names in SuspenseScreen"

Name of the columns like TypeCode, Prefix, Amount in SuspenseScreen for which a value should be populated from the transaction to which GenerateSuspense business rule is attached to.

         <Fields>

Optional element;

Used to specify the MathVariables in transactions where the values should be copied from.  Also specifies the Fields in SuspenseScreen/SuspenseBatchScreen (AsSuspenseField) where values should be copied to.

 

 

              <Field>

Required / Repeatable element;

The opening and closing tag that encompasses <From> and <To> elements

 

 

                 <From>

Required element;

The <From> element will contain the name of Field or MathVariable in the Transaction

 

 

Required element value;

String

The field name or MathVariable in the transaction where the values should be copied from.

                 <To>

Required element;

The <To> element will contain the name of a dynamic field in SuspenseScreen/SuspenseBatchScreen where the value should be copied to.

 

Required element value;

String

The field name or MathVariable in the SuspenseScreen/SuspenseBatchScreen where the values should be copied to.

        <GenerateAccounting>

Optional element;
This element is used to indicate whether the accounting should be performed for the newly generated records.

 

 

       <Tests>

Optional element;
Allows configuration of test(s) to see if a section of rule should be invoked.

 

 

            <Test>

Required / Repeatable element;
Condition to add role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added.

TYPE

Required element value;
Expression:  
An expression to specify a condition.
 
Optional attribute
;

="
Expression"

To indicate the type of the condition.

Example:

<Test TYPE="Expression">SomeMathVariable =27</Test>

      <ShadowSuspenseOnReversal>

Optional element;
This element is used to indicate whether the suspense should be shadowed upon the reversal of the transaction. This will prevent the suspense record from being used anymore.

 

 

       <Tests>

Optional element;
Allows configuration of test(s) to see if a  section of rule should be invoked.

 

 

            <Test>

Required /Repeatable element;
Condition to add role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added.

TYPE

Required element value;
Expression:  
An expression to specify a condition
 
Optional attribute;

="
Expression"
To indicate the type of the condition.

<GenerateAccountingOnReversal>

Optional element;
This element is used to indicate whether the accounting should be performed when the corresponding transaction is recycled or reversed.

 

 

       <Tests>

Optional element;
Allows configuration of test(s) to see if a  section of rule should be invoked.

 

 

            <Test>

Required / Repeatable element;
Condition to add role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added.

TYPE

Required element value;
Expression:  
An expression to specify a condition.
 
Optional attribute;

=
"Expression"

To indicate the type of the condition.

 

 XML Example

<GenerateSuspense>

<Tests>

<Test TYPE="Expression">GenerateSuspense=Yes</Test>

</Tests>

<Suspense>

<Column NAME="TypeCode">'03'</Column>

<Column NAME="Amount">1000</Column>

<Column NAME="PolicyNumber"></Column>

<Column NAME="EffectiveDate"></Column>

<Column NAME="LastName"></Column>

<Column NAME="FirstName"></Column>

<Column NAME="AccountNumber">50002</Column>

<GenerateAccounting>

     <Tests>

        <Test>Yes = Yes</Test>

     </Tests>

</GenerateAccounting>

 

<GenerateAccountingOnReversal>

     <Tests>

         <Test>Yes = Yes</Test>

     </Tests>

</GenerateAccountingOnReversal>

 

<ShadowSuspenseOnReversal>

     <Tests>

         <Test>Amount = AttachedAmount</Test>

    </Tests>

</ShadowSuspenseOnReversal>

</GenerateSuspense>

 Schema Example

<GenerateSuspense RULE="[SuspenseScreen | SuspenseBatchScreen]">

     <Tests>

          <Test></Test>

     </Tests>

     <Suspense>

          <Column NAME="[String]">[Date | Integer | String | Decimal | Money | Percent]</Column>

               <Fields>

                    <Field>

                        <From>[String]</From>

                        <To>[String]</To>

                    </Field>

               </Fields>

      <GenerateAccounting>

            <Test></Test>

      </GenerateAccounting>
 

      <GenerateAccountingOnRevesal>

            <Test></Test>

      </GenerateAccountingOnRevesal>

 

      <ShadowSuspenseOnReversal>

            <Test></Test>

      </ShadowSuspenseOnReversal>

      </Suspense>

</GenerateSuspense>